<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
	<title>Windows - Screenbar Documentation</title>
	<link rel="stylesheet" type="text/css" media="screen" href="style.css">
</head>
<body>

<H1>Windows</H1>

<H2>Overview</H2>
<a name="overview"/>

<P>Screenbar has three types of windows: panels, drag windows, and tooltips.
Panels are created on startup based on the sbPanels option. Drag windows are
created by dragging layout elements which have the (prefix)Draggable option
set. Tooltips are created by hovering the mouse over a layout element which
has the (prefix)ToolTip option set. Some options are shared, while others are
specific to one of these types.</P>

<P>Window options common to all window types:</P>

<div id="configoption" name="prefixBackgroundColor">
	<div id="prototype">(prefix)BackgroundColor [color]</div>
	<div id="defaultval">Default: 000000 (black)</div>
	<div id="description">
		If not transparent, the panel's background fill color.
	</div>
</div>

<div id="configoption" name="prefixRootElement">
	<div id="prototype">(prefix)RootElement [identifier]</div>
	<div id="defaultval">Mandatory setting</div>
	<div id="description">
		The name of the root layout element which this panel is drawn with.
	</div>
</div>

<div id="configoption" name="prefixTransparent">
	<div id="prototype">(prefix)Transparent [bool]</div>
	<div id="defaultval">Default: false</div>
	<div id="description">
		If set, areas on this window which aren't covered by elements are
		transparent.
	</div>
</div>

<div id="configoption" name="prefixTransparencyMethod">
	<div id="prototype">(prefix)TransparencyMethod [colorkey|overlay]</div>
	<div id="defaultval">Default: colorkey</div>
	<div id="description">
		If (prefix)Transparent is true, the method used for making the window
		transparent. If set to colorkey, uses color-key transparency, making the
		color (255,0,255) represent transparency, and making that color the
		background color. If set to overlay, uses an alpha map for partial
		transparency.
		Due to a bug in Windows video overlay handling, transparent windows may
		not cover the top-left pixel of the screen (0,0). Doing so will break
		common video players.
	</div>
</div>

<div id="configoption" name="prefixOpacity">
	<div id="prototype">(prefix)Opacity [int]</div>
	<div id="defaultval">Default: 255</div>
	<div id="description">
		If (prefix)Transparent is true, the overall opacity of the window, from 0
		(fully transparent) to 255 (fully opaque).
	</div>
</div>

<div id="configoption" name="prefixVertical">
	<div id="prototype">(prefix)Vertical [bool]</div>
	<div id="defaultval">Default: false</div>
	<div id="description">
		Whether this window flows vertically. Affects how flow layout elements are
		arranged. Not used if this window is an appbar panel; in that case, it is
		vertical if it is on the left or right edge, and horizontal if it is on the
		top or bottom edge. Also does not apply to drag windows, which inherit this
		setting from the (prefix)Draggable element that created them.
	</div>
</div>

<div id="configoption" name="createAnimation">
	<div id="prototype">(prefix)CreateAnimation [<a href="animations.html">animation</a>]</div>
	<div id="defaultval">Default: none</div>
	<div id="description">
		The animation which is played when the window is first created.
	</div>
</div>

<div id="configoption" name="animationDirection">
	<div id="prototype">(prefix)AnimationDirection [up|left|right|down|auto]</div>
	<div id="defaultval">Default: auto</div>
	<div id="description">
		The orientation for this panel's create, show and hide animations, and
		for animations run by elements in its layout. If the direction is
		"auto", it is determined by which edge of the screen the window is on,
		and points towards the center of the monitor.
	</div>
</div>

<H2>Panels</H2>
<a name="panels"/>

See also: <a href="options.html#sbPanels">sbPanels</a> option.

<div id="configoption" name="prefixMonitors">
	<div id="prototype">(prefix)Monitors [<a href="descriptions.html#monitors">monitors</a>]</div>
	<div id="defaultval">Default: all</div>
	<div id="description">
		The monitor (or monitors) on which this panel appears. Positioning options
		are relative to this monitor. If more than one monitor is specified (as
		with the default), then one panel is created for each monitor specified.
	</div>
</div>

<div id="configoption" name="prefixAlwaysOnTop">
	<div id="prototype">(prefix)AlwaysOnTop [bool]</div>
	<div id="defaultval">Default: false</div>
	<div id="description">
		Whether this panel starts out always on top.
	</div>
</div>

<div id="configoption">
	<div id="prototype" name="prefixX">(prefix)X [coord]</div>
	<div id="prototype" name="prefixY">(prefix)Y [coord]</div>
	<div id="prototype" name="prefixWidth">(prefix)Width [coord]</div>
	<div id="prototype" name="prefixHeight">(prefix)Height [coord]</div>
	<div id="defaultval">Mandatory setting (if applicable)</div>
	<div id="description">
		If this panel is not an appbar, sets the location and size of this
		panel.  Not used if this panel is an appbar. Negative coordinates are
		interpreted as relative to the width and height of the monitor the
		panel is on.
	</div>
</div>

<div id="configoption" name="prefixAppbar">
	<div id="prototype">(prefix)Appbar [bool]</div>
	<div id="defaultval">Default: false</div>
	<div id="description">
		If set, makes this panel into an appbar. Rather than using the rect
		specified by (prefix)X,Y,Width,Height, it spans the edge of the screen
		given by (prefix)Edge, with a thickness of (prefix)Thickness.
	</div>
</div>

<div id="configoption" name="prefixEdge">
	<div id="prototype">(prefix)Edge [left|top|right|bottom]</div>
	<div id="defaultval">Default: bottom</div>
	<div id="description">
		If this panel is an appbar, the edge of the screen which it is docked to.
	</div>
</div>

<div id="configoption" name="prefixThickness">
	<div id="prototype">(prefix)Thickness [int]</div>
	<div id="description">
		The thickness of this panel, if it is an appbar. Ignored if it isn't.
	</div>
</div>

<div id="configoption" name="prefixAutoHide">
	<div id="prototype">(prefix)AutoHide [bool]</div>
	<div id="defaultval">Default: false</div>
	<div id="description">
		Makes this panel automatically hide itself when the cursor is not near it.
		Only available if (prefix)Appbar is true.
	</div>
</div>

<div id="configoption" name="prefixHideDelay">
	<div id="prototype">(prefix)HideDelay [int]</div>
	<div id="defaultval">Default: 1000</div>
	<div id="description">
		If auto-hide is enabled, the amount of time the panel remains visible
		after the cursor has moved off it, in milliseconds.
	</div>
</div>

<div id="configoption" name="prefixHiddenThickness">
	<div id="prototype">(prefix)HiddenThickness [int]</div>
	<div id="defaultval">Default: 1</div>
	<div id="description">
		The amount of the panel which is visible while it is hidden due to
		auto-hide, in pixels.
	</div>
</div>

<div id="configoption" name="prefixHideAnimation">
	<div id="prototype">(prefix)HideAnimation [<a href="animations.html">animation</a>]</div>
	<div id="defaultval">Default: none</div>
	<div id="description">
		The animation played when this window auto-hides.
	</div>
</div>

<div id="configoption" name="prefixShowAnimation">
	<div id="prototype">(prefix)ShowAnimation [<a href="animations.html">animation</a>]</div>
	<div id="defaultval">Default: none</div>
	<div id="description">
		The animation played when this window reappears after being
		auto-hidden.
	</div>
</div>

<H2>Tooltips</H2>
<a name="tooltips"/>

<div id="configoption">
	<div id="prototype" name="prefixMinLength">(prefix)MinLength [int]</div>
	<div id="prototype" name="prefixMaxLength">(prefix)MaxLength [int]</div>
	<div id="defaultval">Defaults: 0, 1000</div>
	<div id="description">
		The minimum and maximum lengths of this window. The actual length is
		determined by the root element, within these constraints.
	</div>
</div>

<div id="configoption" name="prefixPlacementMethod">
	<div id="prototype">(prefix)PlacementMethod [panel|cursor]</div>
	<div id="defaultval">Default: panel</div>
	<div id="description">
		The way in which the position of this window should be determined. If set
		to 'panel', the window is aligned to the edge of the panel which contained
		the element that's hovered over. If set to 'cursor', it is positioned a
		fixed distance above or below the cursor, and may overlap or not touch the
		panel.
	</div>
</div>

<div id="configoption" name="prefixThickness">
	<div id="prototype">(prefix)Thickness [int]</div>
	<div id="defaultval">Default: 16</div>
	<div id="description">
		The thickness of this window (height if a horizontal layout, width if
		vertical).
	</div>
</div>

<H2>Drag windows</H2>
<a name="drag"/>

<P>Drag windows inherit their size, root element, and vertical setting from the
element which is being dragged.</P>


<div id="navigation">
	<a href="options.html">Previous Page</a>
	<a href="index.html">Index</a>
	<a href="layout.html">Next Page</a>
</div>

</body>
</html>
